#ifndef THEMEMANAGER_H
#define THEMEMANAGER_H

#include <QObject>
#include "global.h"

class ThemeManager
{
public:
    static ThemeManager instance;
    static ThemeManager & getInstance(){
        return instance;
    }

    // 切换主题
    void changeTheme();

    // 加载主题
    void loadTheme();

    // 获取设置主题
    void setCurrentTheme(Theme theme){currentTheme = theme;};
    const Theme& getCurrentTheme(){return currentTheme;}
    const QVector<Theme> getThemes(){return themes;}
private:
    ~ThemeManager(){};
    ThemeManager();
    ThemeManager(const ThemeManager& )=delete;
    ThemeManager& operator=(const ThemeManager &)=delete;

    // 主体列表信息（目前只支持应用内置的几种主题）
    QVector<Theme> themes;

    // 当前主体
    Theme currentTheme;
};

#endif // THEMEMANAGER_H
